package com.yxc;

import org.junit.Test;

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

/**
 * @author: YXC
 * @time: 2023/6/7 14:36
 **/
public class DistinctTest {

    public static List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 6, 7, 7, 7, 8, 9, 1);

    /**
     * 利用stream().distinct()方法去重
     *
     * @author YXC
     * @date 2023/6/7 14:48
     * @return void
    **/
    @Test
    public void demo1() {
        /**
         * distinct默认利用对象的equals和hasCode方法来判断是否一样
         * distinct方法无参数，如果需要根据对象中的某一个属性去重，可以利用map转换为以这一字段为key的map，再取value
         */
        List<Integer> newList = list.stream()
                .distinct()
                .collect(Collectors.toList());

        System.out.println(newList);
    }

}
